package com.qimu.saiyou.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 权限校验
 * 自定义注解
 * 该代码是一个自定义注解@AuthCheck，用于标记需要进行权限校验的方法。该注解只能用于方法上，并在运行时保
 * 留。该注解包含一个名为mustRole的属性，表示必须的角色信息，默认为空字符串。
 *自定义一个权限，如果一个方法使用了该注解，并指定了必须的角色信息，那么只有拥有该角色的用户才能访问该方法
 * @author: FeiXiang
 */
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface AuthCheck {

    /**
     * 有任何一个角色
     *
     * @return {@link String[]}
     */
    String[] anyRole() default "";

    /**
     * 必须有某个角色
     *
     * @return {@link String}
     */
    String mustRole() default "";

}

